package com.cci.kangdao.model;

import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;

/**
 * 终端用户服务工单信息
 */
@Data
public class WorkOrderInfo {

    /**
     * id
     */
    @JSONField(name = "id")
    private Long id;

    /**
     * 服务工单id
     */
    @JSONField(name = "OrderId")
    private Long OrderId;

    /**
     * 工单渠道
     */
    @JSONField(name = "OrderChannel")
    private Integer OrderChannel;
    /**
     * 工单编号
     */
    @JSONField(name = "OrderNo")
    private String OrderNo;
    /**
     * 创建时间
     */
    @JSONField(name = "CreateTime")
    private String CreateTime;
    /**
     * 客户投诉
     */
    @JSONField(name = "CustomerComplaint")
    private String CustomerComplaint;
    /**
     * 客户电话
     */
    @JSONField(name = "CustomerPhone")
    private String CustomerPhone;
    /**
     * esn
     */
    @JSONField(name = "ESN")
    private String ESN = "";
    /**
     * 真实esn
     */
    @JSONField(name = "RealESN")
    private String RealESN;
    /**
     * 客户名称
     */
    @JSONField(name = "CustomerName")
    private String CustomerName;
    /**
     * 保修性质
     */
    @JSONField(name = "WarrantyNature")
    private String WarrantyNature = "";
    /**
     * 变速箱号
     */
    @JSONField(name = "AmtNo")
    private String AmtNo = "";
    /**
     * 故障发生时间
     */
    @JSONField(name = "FaultHappenTime")
    private String FaultHappenTime = "";
    /**
     * 工单状态
     */
    @JSONField(name = "OrderStatusNo")
    private Integer OrderStatusNo;
    /**
     * 工单状态
     */
    @JSONField(name = "processStatus")
    private Integer processStatus;
    /**
     * 工单状态字典值
     */
    @JSONField(name = "OrderStatus")
    private String OrderStatus;
    /**
     * 更新时间
     */
    @JSONField(name = "TimeStamp")
    private String TimeStamp;
    /**
     * 工单类型；xcec渠道0:发动机维修 1:售时服务；DCEC渠道2-发动机工单 3变速箱工单
     */
    @JSONField(name = "OrderType")
    private Integer OrderType;
    /**
     *预测距离
     */
    @JSONField(name = "GuessDistance")
    private Float GuessDistance;
    /**
     *是否有用户评论
     */
    @JSONField(name = "isUserAppraise")
    private Integer isUserAppraise;
    /**
     *工单来源
     */
    @JSONField(name = "OrderSource")
    private Integer OrderSource;
    /**
     *联系人名称
     */
    @JSONField(name = "ContactName")
    private String ContactName;
    /**
     *联系人电话
     */
    @JSONField(name = "ContactPhone")
    private String ContactPhone;
    /**
     *客户公司名称
     */
    @JSONField(name = "CustomerCompanyName")
    private String CustomerCompanyName = "";
    /**
     * 工单是否收藏
     */
    @JSONField(name = "isCollect")
    private Integer isCollect = 0;
    /**
     * 转移原因
     */
    @JSONField(name = "TransferReason")
    private String TransferReason;
    /**
     * crm号
     */
    @JSONField(name = "OrderNoCrm")
    private String OrderNoCrm;
    /**
     * xcec售时工单类型 售前检查、售时培训、售前检查+售时培训
     */
    @JSONField(name = "salesServiceType")
    private String salesServiceType;
    /**
     * 保内，保外，业务支持
     */
    @JSONField(name = "BookkeepingType")
    private String BookkeepingType;
    /**
     * 机组序列号
     */
    @JSONField(name = "GSN")
    private String GSN;
    /**
     * 症状名称，基础数据来自WorkOrderSymptomsData_T表，dbu客户抱怨标准化使用
     */
    @JSONField(name = "SymptomName")
    private String SymptomName;
    /**
     * 经度
     */
    @JSONField(name = "LocLon")
    private String LocLon;
    /**
     * 纬度
     */
    @JSONField(name = "LocLat")
    private String LocLat;
    /**
     * 服务站纬度
     */
    @JSONField(name = "PositionLat")
    private String PositionLat;
    /**
     * 服务站经度
     */
    @JSONField(name = "PositionLon")
    private String PositionLon;
    /**
     * 机型
     */
    @JSONField(name = "EngineType")
    private String EngineType;
    /**
     * 是否外部
     */
    @JSONField(name = "IsOutside")
    private Integer IsOutside;
    /**
     * 服务站Id
     */
    @JSONField(name = "StationId")
    private Long StationId;
    /**
     * 诊断工单Id
     */
    @JSONField(name = "drWorkOrderId")
    private Long drWorkOrderId;
    /**
     * 用户姓名
     */
    @JSONField(name = "qyEngineerName")
    private String qyEngineerName;
    /**
     * 渠道编号
     */
    @JSONField(name = "channel")
    private String channel;
    /**
     * ccss工单编号
     */
    @JSONField(name = "CCSSOrderNo")
    private String CCSSOrderNo = "";
    /**
     * 是否是主负责人
     */
    @JSONField(name = "IsPrincipal")
    private Integer IsPrincipal;
    /**
     * 包含的服务子类型 注：多个值用分号隔开
     */
    @JSONField(name = "ServiceSubtype")
    private String ServiceSubtype;
    /**
     * 统修编号
     */
    @JSONField(name = "UnifiedRepairNo")
    private String UnifiedRepairNo = "";
    /**
     * 故障码信息，dbu客户抱怨标准化使用
     */
    @JSONField(name = "FaultCodes")
    private String FaultCodes;
    /**
     * 工作时间
     */
    @JSONField(name = "WorkHours")
    private String WorkHours = "";
    /**
     * 工作里程
     */
    @JSONField(name = "WorkMileages")
    private String WorkMileages = "";
    /**
     * smn
     */
    @JSONField(name = "SMN")
    private String SMN = "";
    /**
     * 保修开始日期
     */
    @JSONField(name = "WarrantyStartDate")
    private String WarrantyStartDate = "";
    /**
     * 应用
     */
    @JSONField(name = "Application")
    private String Application = "";
    /**
     * 维修企业
     */
    @JSONField(name = "vehicleCompany")
    private String vehicleCompany = "";
    /**
     * 小时数或公里数
     */
    @JSONField(name = "WorkHoursMileages")
    private String WorkHoursMileages;
    /**
     * 故障地点
     */
    @JSONField(name = "Location")
    private String Location = "";
    /**
     * 服务站拒绝理由
     */
    @JSONField(name = "RefuseReasonStation")
    private String RefuseReasonStation = "";
    /**
     * 1质量索赔;2商务活动;3善意担保
     */
    @JSONField(name = "NatureClaim")
    private String NatureClaim;
    /**
     * 1派人;2派车;3新机检查;4非发动机原因
     */
    @JSONField(name = "EmergencyMode")
    private String EmergencyMode;
    /**
     * 服务初始化计划
     */
    @JSONField(name = "ServiceInitPlan")
    private String ServiceInitPlan;
    /**
     * 故障解决方案
     */
    @JSONField(name = "FaultSolution")
    private String FaultSolution;
    /**
     * 失效模式
     */
    @JSONField(name = "InvalidModel")
    private String InvalidModel;
    /**
     * 问题等级
     */
    @JSONField(name = "ProblemLevel")
    private String ProblemLevel;
    /**
     * 是否自主诊断
     */
    @JSONField(name = "isHaveselfDiagnosticDetail")
    private Integer isHaveselfDiagnosticDetail;
    /**
     * 工单操作类型
     */
    @JSONField(name = "FuStatus")
    private Integer FuStatus = 0;
    /**
     * 主动升级单id
     */
    @JSONField(name = "EscalationOrderID")
    private Long EscalationOrderID = 0L;
    /**
     * 更换维修点的经度
     */
    @JSONField(name = "ReplaceLon")
    private Float ReplaceLon;
    /**
     * 更换维修点的纬度
     */
    @JSONField(name = "ReplaceLat")
    private Float ReplaceLat;
    /**
     * 新目标点位置
     */
    @JSONField(name = "NewTargetLocation")
    private String NewTargetLocation;
    /**
     * 是否完成维修确认
     */
    @JSONField(name = "isFinishRepairAck")
    private Integer isFinishRepairAck = 0;
    /**
     * 是否满足维修确认条件
     */
    @JSONField(name = "isFitRepairAck")
    private Integer isFitRepairAck = 0;
    /**
     * 处理时长
     */
    @JSONField(name = "DealTime")
    private Long DealTime = 0L;
    /**
     * 补救措施
     */
    @JSONField(name = "needRemedy")
    private Integer needRemedy = 0;
    /**
     * 0：非MT工单    1：MT工单
     */
    @JSONField(name = "MtTag")
    private Integer MtTag = 0;
    /**
     * 服务站关系类型
     */
    @JSONField(name = "stationRelationType")
    private Integer stationRelationType = 0;
    /**
     * 服务站名称
     */
    @JSONField(name = "childrenStationName")
    private String childrenStationName;
    /**
     * 市场类型
     */
    @JSONField(name = "MarketType")
    private String MarketType = "";
    /**
     * 外出类型
     */
    @JSONField(name = "IsHaveGoOutType")
    private Integer IsHaveGoOutType;
    /**
     * 投诉工作单类型
     */
    @JSONField(name = "IntComplainWorkOrderType")
    private String IntComplainWorkOrderType;
    /**
     * 投诉工作单类型内容
     */
    @JSONField(name = "ValueComplainWorkOrderType")
    private String ValueComplainWorkOrderType;
    /**
     * 保修是否开始
     */
    @JSONField(name = "ISWarrantyStart")
    private Integer ISWarrantyStart = 2;
    /**
     * 工单流程时间
     */
    @JSONField(name = "dealTiming")
    private String dealTiming;
    /**
     * 服务站名称
     */
    @JSONField(name = "StationName")
    private String StationName;

    /**
     * 服务站名称
     */
    @JSONField(name = "ServiceStationName")
    private String ServiceStationName;

    /**
     * 24小时热线
     */
    @JSONField(name = "HotlineTel")
    private String HotlineTel;
    /**
     * 校验当前esn当天是否存在ccec400指派过的工单
     * 0 是未指派过，1是指派过
     */
    @JSONField(name = "ESNHasDesignatedToday")
    private Integer ESNHasDesignatedToday = 0;
    /**
     * 维修完成的时间点
     */
    @JSONField(name = "ConfirmModifyTime")
    private String ConfirmModifyTime;
    /**
     * 关闭原因
     */
    @JSONField(name = "CloseReason")
    private String CloseReason;
    /**
     * 发动机生产日期
     */
    @JSONField(name = "EngineProducedDate")
    private String EngineProducedDate;
    /**
     * 故障级别
     */
    @JSONField(name = "FaultLevel")
    private Integer FaultLevel;
    /**
     * 尺寸
     */
    @JSONField(name = "SizeFailure")
    private Integer SizeFailure;
    /**
     * 修理工类型
     */
    @JSONField(name = "IntRepairerPersonType")
    private String IntRepairerPersonType;
    /**
     * 修理工类型内容
     */
    @JSONField(name = "ValueRepairerPersonType")
    private String ValueRepairerPersonType;
    /**
     * 错误原因
     */
    @JSONField(name = "IntCCECFaultReason")
    private String IntCCECFaultReason;
    /**
     * 错误原因内容
     */
    @JSONField(name = "ValueCCECFaultReason")
    private String ValueCCECFaultReason;
    /**
     * tsrId
     */
    @JSONField(name = "TSRReportID")
    private Long TSRReportID = 0L;
    /**
     * 解决原因
     */
    @JSONField(name = "ResolveReason")
    private String ResolveReason;
    /**
     * 备注
     */
    @JSONField(name = "Remark")
    private String Remark;
    /**
     * 服务站电话
     */
    @JSONField(name = "ServiceStationPhone")
    private String ServiceStationPhone;

    /**
     * vin
     */
    @JSONField(name = "VIN")
    private String VIN;
    /**
     * 底盘号
     */
    @JSONField(name = "ChassisNumber")
    private String ChassisNumber;

    /**
     * 是否为技术支持工单,1：是， 0：否
     */
    @JSONField(name = "isTechSupport")
    private Integer isTechSupport;

    /**
     * 技术支持内容
     */
    @JSONField(name = "techSupportContent")
    private String techSupportContent;

    /**
     * dbu工单是否完成了自行诊断或者智能诊断
     */
    @JSONField(name = "BulletFlag")
    private Integer BulletFlag;
    /**
     * 道路0  非道路1
     */
    @JSONField(name = "EsnApplicationType")
    private Integer EsnApplicationType;
    /**
     * 1 可替换orc识别内容 0 不可替换ocr内容
     */
    @JSONField(name = "OcrUpdateFlag")
    private Integer OcrUpdateFlag;

    /**
     * 售时售中售后
     */
    @JSONField(name = "SellType")
    private String SellType;

    @JSONField(name = "ocrUrl")
    private String ocrUrl;

    @JSONField(name = "fileType")
    private String fileType;

    @JSONField(name = "AppVersion")
    private String appVersion;

    /**
     * 是否存在campaign任务(0：否   1:是)
     */
    @JSONField(name = "isHasCampaignTask")
    private Integer isHasCampaignTask;

    /**
     * campaign任务是否完成(0：否   1:是)
     */
    @JSONField(name = "campaignStatus")
    private Integer campaignStatus;
}
